emacs.git
6 years agobetter doc for comp-func struct
Andrea Corallo [Sat, 21 Sep 2019 17:14:20 +0000 (19:14 +0200)]
better doc for comp-func struct

6 years agostrengthening comp-compute-edges
Andrea Corallo [Sat, 21 Sep 2019 17:13:11 +0000 (19:13 +0200)]
strengthening comp-compute-edges

6 years agoverify to never emit insns into a closed block
Andrea Corallo [Sat, 21 Sep 2019 16:13:13 +0000 (18:13 +0200)]
verify to never emit insns into a closed block

6 years agobetter logging
Andrea Corallo [Sat, 21 Sep 2019 15:19:20 +0000 (17:19 +0200)]
better logging

6 years agorework lap spilling
Andrea Corallo [Sat, 21 Sep 2019 15:18:57 +0000 (17:18 +0200)]
rework lap spilling

6 years agobetter log output
Andrea Corallo [Sat, 21 Sep 2019 12:06:13 +0000 (14:06 +0200)]
better log output

6 years agoadd missing arguments if missing in comp-call-optim-form-call
Andrea Corallo [Sat, 21 Sep 2019 09:38:40 +0000 (11:38 +0200)]
add missing arguments if missing in comp-call-optim-form-call

6 years agobetter error signaling when compilation fails
Andrea Corallo [Sat, 21 Sep 2019 09:36:48 +0000 (11:36 +0200)]
better error signaling when compilation fails

6 years agocleanup unnecessary code and allow inlining at speed 3
Andrea Corallo [Sat, 21 Sep 2019 08:36:53 +0000 (10:36 +0200)]
cleanup unnecessary code and allow inlining at speed 3

6 years agoadd direct-call direct-callref support into the backend
Andrea Corallo [Sat, 21 Sep 2019 08:23:18 +0000 (10:23 +0200)]
add direct-call direct-callref support into the backend

6 years agoextend emit_call to perform direct calls
Andrea Corallo [Sat, 21 Sep 2019 08:07:26 +0000 (10:07 +0200)]
extend emit_call to perform direct calls

6 years agosplit declaration and compilation
Andrea Corallo [Sat, 21 Sep 2019 07:48:15 +0000 (09:48 +0200)]
split declaration and compilation

6 years agoadd direct-call direct-callref into frontend
Andrea Corallo [Sat, 21 Sep 2019 07:47:02 +0000 (09:47 +0200)]
add direct-call direct-callref into frontend

6 years agobetter naming func_hash -> imported_func_h
Andrea Corallo [Thu, 19 Sep 2019 12:55:44 +0000 (14:55 +0200)]
better naming func_hash -> imported_func_h

6 years agodead code removal
Andrea Corallo [Thu, 19 Sep 2019 12:29:14 +0000 (14:29 +0200)]
dead code removal

6 years agoguard comp-call-optim-form-call for byte compiled callee
Andrea Corallo [Wed, 18 Sep 2019 23:25:46 +0000 (01:25 +0200)]
guard comp-call-optim-form-call for byte compiled callee

6 years agofix compilation for comp.el
Andrea Corallo [Wed, 18 Sep 2019 22:07:10 +0000 (00:07 +0200)]
fix compilation for comp.el

6 years agoadding comp-call-optim pass
Andrea Corallo [Wed, 18 Sep 2019 21:25:37 +0000 (23:25 +0200)]
adding comp-call-optim pass

6 years agoadd native_elisp field into Lisp_Subr
Andrea Corallo [Wed, 18 Sep 2019 10:46:45 +0000 (12:46 +0200)]
add native_elisp field into Lisp_Subr

6 years agoremove comp-emit-funcall
Andrea Corallo [Wed, 18 Sep 2019 09:55:25 +0000 (11:55 +0200)]
remove comp-emit-funcall

6 years agoadd comp-call-optim pass
Andrea Corallo [Wed, 18 Sep 2019 09:30:23 +0000 (11:30 +0200)]
add comp-call-optim pass

6 years agoadd pushhandler to clobber operators
Andrea Corallo [Tue, 17 Sep 2019 11:18:40 +0000 (13:18 +0200)]
add pushhandler to clobber operators

6 years agokeep on fixing ssa
Andrea Corallo [Mon, 16 Sep 2019 23:01:34 +0000 (01:01 +0200)]
keep on fixing ssa

6 years agorewriting ssa rename
Andrea Corallo [Mon, 16 Sep 2019 20:18:58 +0000 (22:18 +0200)]
rewriting ssa rename

6 years agogive back basic block a C like name
Andrea Corallo [Mon, 16 Sep 2019 20:18:19 +0000 (22:18 +0200)]
give back basic block a C like name

6 years agofix callref parsing into C back-end
Andrea Corallo [Mon, 16 Sep 2019 18:23:57 +0000 (20:23 +0200)]
fix callref parsing into C back-end

6 years agofix comp-compute-edges handling all kind of branches
Andrea Corallo [Mon, 16 Sep 2019 18:11:05 +0000 (20:11 +0200)]
fix comp-compute-edges handling all kind of branches

6 years agoadd some notes
Andrea Corallo [Mon, 16 Sep 2019 17:48:13 +0000 (19:48 +0200)]
add some notes

6 years agofix switch emission due to missing const prop
Andrea Corallo [Mon, 16 Sep 2019 17:47:49 +0000 (19:47 +0200)]
fix switch emission due to missing const prop

6 years agomodify callref format to explicitate mvars
Andrea Corallo [Sun, 15 Sep 2019 13:41:42 +0000 (15:41 +0200)]
modify callref format to explicitate mvars

6 years agoadding propagation
Andrea Corallo [Sun, 15 Sep 2019 12:43:30 +0000 (14:43 +0200)]
adding propagation

6 years agofix again ssa renaming
Andrea Corallo [Sun, 15 Sep 2019 10:31:44 +0000 (12:31 +0200)]
fix again ssa renaming

6 years agoadd ssa param to comp-new-frame
Andrea Corallo [Sun, 15 Sep 2019 10:08:22 +0000 (12:08 +0200)]
add ssa param to comp-new-frame

6 years agoclean-up limplify
Andrea Corallo [Sun, 15 Sep 2019 10:07:04 +0000 (12:07 +0200)]
clean-up limplify

6 years agofix ssa renaming
Andrea Corallo [Sun, 15 Sep 2019 08:50:33 +0000 (10:50 +0200)]
fix ssa renaming

6 years agoremove incomplete propagation during limplification pass
Andrea Corallo [Sat, 14 Sep 2019 16:12:16 +0000 (18:12 +0200)]
remove incomplete propagation during limplification pass

6 years agoadd phi finalizer
Andrea Corallo [Sat, 14 Sep 2019 15:55:03 +0000 (17:55 +0200)]
add phi finalizer

6 years agoadd ssa renaming
Andrea Corallo [Sat, 14 Sep 2019 15:00:16 +0000 (17:00 +0200)]
add ssa renaming

6 years agocore reorder
Andrea Corallo [Sat, 14 Sep 2019 13:25:11 +0000 (15:25 +0200)]
core reorder

6 years agoadd comp-dominator-tree-walker
Andrea Corallo [Sat, 14 Sep 2019 12:51:43 +0000 (14:51 +0200)]
add comp-dominator-tree-walker

6 years agoplace phis
Andrea Corallo [Sat, 14 Sep 2019 10:39:53 +0000 (12:39 +0200)]
place phis

6 years agosome code massage + doc into the SSA pass
Andrea Corallo [Sat, 14 Sep 2019 08:52:57 +0000 (10:52 +0200)]
some code massage + doc into the SSA pass

6 years agoadd dominator frontiers computation
Andrea Corallo [Sat, 14 Sep 2019 08:13:38 +0000 (10:13 +0200)]
add dominator frontiers computation

6 years agocompute dominator tree
Andrea Corallo [Fri, 13 Sep 2019 18:56:24 +0000 (20:56 +0200)]
compute dominator tree

6 years agossa and endge number generation with generator
Andrea Corallo [Fri, 13 Sep 2019 15:55:16 +0000 (17:55 +0200)]
ssa and endge number generation with generator

6 years agoadd edge computation
Andrea Corallo [Wed, 11 Sep 2019 21:13:13 +0000 (23:13 +0200)]
add edge computation

6 years agorename comp-ctxt-funcs comp-ctxt-exp-funcs
Andrea Corallo [Wed, 11 Sep 2019 20:18:41 +0000 (22:18 +0200)]
rename comp-ctxt-funcs comp-ctxt-exp-funcs

6 years agorework comp-new-frame
Andrea Corallo [Wed, 11 Sep 2019 19:56:26 +0000 (21:56 +0200)]
rework comp-new-frame

6 years agorework basic block creation
Andrea Corallo [Wed, 11 Sep 2019 19:51:37 +0000 (21:51 +0200)]
rework basic block creation

6 years agofix missing cl- prefix in comp.el
Andrea Corallo [Mon, 9 Sep 2019 17:43:12 +0000 (19:43 +0200)]
fix missing cl- prefix in comp.el

6 years agostyle nit
Andrea Corallo [Mon, 9 Sep 2019 20:56:09 +0000 (22:56 +0200)]
style nit

6 years agoadd test for recursive calls
Andrea Corallo [Mon, 9 Sep 2019 19:39:03 +0000 (21:39 +0200)]
add test for recursive calls

6 years agofix broken selfcall optimization
Andrea Corallo [Mon, 9 Sep 2019 19:35:31 +0000 (21:35 +0200)]
fix broken selfcall optimization

6 years agocrank optimizations while running native compiler test suite
Andrea Corallo [Mon, 9 Sep 2019 10:55:51 +0000 (12:55 +0200)]
crank optimizations while running native compiler test suite

6 years agopacify gcc and improve sanaity checks
Andrea Corallo [Mon, 9 Sep 2019 10:01:03 +0000 (12:01 +0200)]
pacify gcc and improve sanaity checks

6 years agodo not override existing basic blocks when branching backwards!
Andrea Corallo [Sun, 8 Sep 2019 19:42:51 +0000 (21:42 +0200)]
do not override existing basic blocks when branching backwards!

6 years agoadd verbosity parameter
Andrea Corallo [Sun, 8 Sep 2019 19:42:37 +0000 (21:42 +0200)]
add verbosity parameter

6 years agorework log mechanism to work non interactively too
Andrea Corallo [Sun, 8 Sep 2019 18:54:41 +0000 (20:54 +0200)]
rework log mechanism to work non interactively too

6 years agoadd sanity check into compile_function
Andrea Corallo [Sun, 8 Sep 2019 18:39:34 +0000 (20:39 +0200)]
add sanity check into compile_function

6 years agosome error handling in compile_function
Andrea Corallo [Sun, 8 Sep 2019 18:16:09 +0000 (20:16 +0200)]
some error handling in compile_function

6 years agonit into comp-log
Andrea Corallo [Sun, 8 Sep 2019 18:08:58 +0000 (20:08 +0200)]
nit into comp-log

6 years agofix pretty printing in native compilation buffer
Andrea Corallo [Sun, 8 Sep 2019 17:56:37 +0000 (19:56 +0200)]
fix pretty printing in native compilation buffer

6 years agoadd assertion for missing op support
Andrea Corallo [Sun, 8 Sep 2019 16:48:29 +0000 (18:48 +0200)]
add assertion for missing op support

6 years agofix missing specbind import
Andrea Corallo [Sun, 8 Sep 2019 16:48:14 +0000 (18:48 +0200)]
fix missing specbind import

6 years agoadd defconst support
Andrea Corallo [Sun, 8 Sep 2019 15:13:48 +0000 (17:13 +0200)]
add defconst support

6 years agoget right dependency during top level form evaluantion
Andrea Corallo [Sun, 8 Sep 2019 15:04:06 +0000 (17:04 +0200)]
get right dependency during top level form evaluantion

6 years agorename comp-slot-next -> comp-slot+1
Andrea Corallo [Sun, 8 Sep 2019 14:57:40 +0000 (16:57 +0200)]
rename comp-slot-next -> comp-slot+1

6 years agofix varset and add a test
Andrea Corallo [Sun, 8 Sep 2019 14:31:53 +0000 (16:31 +0200)]
fix varset and add a test

6 years agofix single function compilation
Andrea Corallo [Sun, 8 Sep 2019 13:55:23 +0000 (15:55 +0200)]
fix single function compilation

6 years agouncomment back all tests
Andrea Corallo [Sun, 8 Sep 2019 13:42:52 +0000 (15:42 +0200)]
uncomment back all tests

6 years agofix lambda handling and add a test for that
Andrea Corallo [Sun, 8 Sep 2019 13:40:56 +0000 (15:40 +0200)]
fix lambda handling and add a test for that

6 years agorename HAVE_LIBGCCJIT -> HAVE_NATIVE_COMP
Andrea Corallo [Sun, 8 Sep 2019 08:11:36 +0000 (10:11 +0200)]
rename HAVE_LIBGCCJIT -> HAVE_NATIVE_COMP

6 years agofix build system for native compiler option
Andrea Corallo [Sun, 8 Sep 2019 07:40:42 +0000 (09:40 +0200)]
fix build system for native compiler option

6 years agoinitial top level support (defvar working)
Andrea Corallo [Sat, 7 Sep 2019 14:35:07 +0000 (16:35 +0200)]
initial top level support (defvar working)

6 years agotest separate compile unit
Andrea Corallo [Sat, 7 Sep 2019 09:55:20 +0000 (11:55 +0200)]
test separate compile unit

6 years agobasic file compilation working
Andrea Corallo [Sat, 7 Sep 2019 09:17:02 +0000 (11:17 +0200)]
basic file compilation working

6 years agosplit final pass + some code rework
Andrea Corallo [Sat, 7 Sep 2019 06:57:07 +0000 (08:57 +0200)]
split final pass + some code rework

6 years agogeneralize code into comp.el for compile multiple funcitons
Andrea Corallo [Sat, 7 Sep 2019 06:18:08 +0000 (08:18 +0200)]
generalize code into comp.el for compile multiple funcitons

6 years agoprepare for file compilation
Andrea Corallo [Fri, 6 Sep 2019 17:33:16 +0000 (19:33 +0200)]
prepare for file compilation

6 years agoremove unused helper functions
Andrea Corallo [Fri, 6 Sep 2019 18:12:29 +0000 (20:12 +0200)]
remove unused helper functions

6 years agouse nrevese where necessary
Andrea Corallo [Thu, 5 Sep 2019 19:47:35 +0000 (21:47 +0200)]
use nrevese where necessary

6 years agosome order into special vars
Andrea Corallo [Thu, 5 Sep 2019 19:16:42 +0000 (21:16 +0200)]
some order into special vars

6 years agoemit fixnum constants as immediates
Andrea Corallo [Thu, 5 Sep 2019 15:24:02 +0000 (17:24 +0200)]
emit fixnum constants as immediates

6 years agofix relocs for all inliners
Andrea Corallo [Wed, 4 Sep 2019 21:12:34 +0000 (23:12 +0200)]
fix relocs for all inliners

6 years agoupdate inline emitters
Andrea Corallo [Mon, 2 Sep 2019 17:06:06 +0000 (19:06 +0200)]
update inline emitters

6 years agofix last test broken by reload
Andrea Corallo [Mon, 2 Sep 2019 16:08:59 +0000 (18:08 +0200)]
fix last test broken by reload

6 years agosimplify condition in emit_ctxt_code
Andrea Corallo [Mon, 2 Sep 2019 16:01:18 +0000 (18:01 +0200)]
simplify condition in emit_ctxt_code

6 years agoneed to temporary add a load path
Andrea Corallo [Mon, 2 Sep 2019 15:37:47 +0000 (17:37 +0200)]
need to temporary add a load path

6 years agorename a function test to avoid name clashing
Andrea Corallo [Mon, 2 Sep 2019 15:32:26 +0000 (17:32 +0200)]
rename a function test to avoid name clashing

6 years agodisable part of comp-tests-ffuncall
Andrea Corallo [Mon, 2 Sep 2019 15:28:25 +0000 (17:28 +0200)]
disable part of comp-tests-ffuncall

6 years agorework stati object serialization
Andrea Corallo [Mon, 2 Sep 2019 15:05:15 +0000 (17:05 +0200)]
rework stati object serialization

6 years agolet emit_literal_string_func emit a dbg friendly friendly
Andrea Corallo [Mon, 2 Sep 2019 10:13:33 +0000 (12:13 +0200)]
let emit_literal_string_func emit a dbg friendly friendly

6 years agoadd helper_unwind_protect as runtime imported
Andrea Corallo [Mon, 2 Sep 2019 09:51:32 +0000 (11:51 +0200)]
add helper_unwind_protect as runtime imported

6 years agolong string literal workaround
Andrea Corallo [Mon, 2 Sep 2019 09:30:51 +0000 (11:30 +0200)]
long string literal workaround

6 years agoadd set_internal as runtime imported
Andrea Corallo [Mon, 2 Sep 2019 08:33:58 +0000 (10:33 +0200)]
add set_internal as runtime imported

6 years agotypo fixes
Andrea Corallo [Mon, 2 Sep 2019 08:33:06 +0000 (10:33 +0200)]
typo fixes

6 years agoadd record_unwind_current_buffer as imported
Andrea Corallo [Sun, 1 Sep 2019 15:16:13 +0000 (17:16 +0200)]
add record_unwind_current_buffer as imported

6 years agofix relocation emission into comp.el
Andrea Corallo [Sun, 1 Sep 2019 15:02:35 +0000 (17:02 +0200)]
fix relocation emission into comp.el

6 years agoadd more runtime helpers
Andrea Corallo [Sun, 1 Sep 2019 14:49:42 +0000 (16:49 +0200)]
add more runtime helpers

6 years agofix func reloc order emission
Andrea Corallo [Sun, 1 Sep 2019 14:16:25 +0000 (16:16 +0200)]
fix func reloc order emission